package cn.jjxx.modules.sbfb.entity;

import cn.jjxx.core.common.entity.AbstractEntity;
import cn.jjxx.core.utils.security.BASE64Encoder;

import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.FieldFill;
import org.framework.superutil.thirdparty.excel.Excel;
import cn.jjxx.modules.sys.entity.User;
import java.util.Date;

/**   
 * @Title: 项目信息表
 * @Description: 项目信息表
 * @author yw
 * @date 2022-01-05 14:29:28
 * @version V1.0   
 *
 */
@TableName("eq_project_info")
@SuppressWarnings("serial")
public class EqProjectInfo extends AbstractEntity<String> {

    /**字段主键*/
    @Excel(name="字段主键")
    @TableId(value = "id", type = IdType.UUID)
	private String id;
    /**分公司Id*/
    @Excel(name="分公司Id")
    @TableField(value = "org_id")
	private String orgId;
    /**状态（0：保存；1：提交；2：审核中；3：已审核；5：打回）*/
    @Excel(name="状态（0：保存；1：提交；2：审核中；3：已审核；5：打回）")
    @TableField(value = "status")
	private Integer status;
    /**创建者*/
    @Excel(name="创建者")
    @TableField(value = "create_by",el="createBy.id",fill = FieldFill.INSERT)
	private User createBy;
    /**创建时间*/
    @Excel(name="创建时间")
    @TableField(value = "create_date",fill = FieldFill.INSERT)
	private Date createDate;
    /**更新者*/
    @Excel(name="更新者")
    @TableField(value = "update_by",el="updateBy.id",fill = FieldFill.UPDATE)
	private User updateBy;
    /**更新时间*/
    @Excel(name="更新时间")
    @TableField(value = "update_date",fill = FieldFill.UPDATE)
	private Date updateDate;
    /**删除标记（0：正常；1：删除）*/
    @Excel(name="删除标记（0：正常；1：删除）")
    @TableField(value = "del_flag")
	private String delFlag;
    /**备注信息*/
    @Excel(name="备注信息")
    @TableField(value = "remarks")
	private String remarks;
    /**项目名称*/
    @Excel(name="项目名称")
    @TableField(value = "name")
	private String name;
    /**项目编号*/
    @Excel(name="项目编号")
    @TableField(value = "code")
	private String code;
    /**经度*/
    @Excel(name="经度")
    @TableField(value = "longtitude")
	private String longtitude;
    /**纬度*/
    @Excel(name="纬度")
    @TableField(value = "latitude")
	private String latitude;
    /**项目描述*/
    @Excel(name="项目描述")
    @TableField(value = "project_desc")
	private String projectDesc;
    /**项目经理*/
    @Excel(name="项目经理")
    @TableField(value = "manager")
	private String manager;
    /**联系人*/
    @Excel(name="联系人")
    @TableField(value = "contact")
	private String contact;
    /**项目来源*/
    @Excel(name="项目来源")
    @TableField(value = "source")
	private String source;
    /**项目规模*/
    @Excel(name="项目规模")
    @TableField(value = "project_scale")
	private String prjectScale;
    /**管理模式*/
    @Excel(name="管理模式")
    @TableField(value = "manage_mode")
	private String manageMode;
    /**项目状态*/
    @Excel(name="项目状态")
    @TableField(value = "project_status")
	private String projectStatus;
    /**管控模式*/
    @Excel(name="管控模式")
    @TableField(value = "mcontrol_mode")
	private String mcontrolMode;
    /**行业*/
    @Excel(name="行业")
    @TableField(value = "trade")
	private String trade;
    /**地址*/
    @Excel(name="地址")
    @TableField(value = "address")
	private String address;
    /**省份*/
    @Excel(name="省份")
    @TableField(value = "province_code")
	private String provinceCode;
    /**省份*/
    @Excel(name="省份")
    @TableField(value = "province")
	private String province;
    /**地市*/
    @Excel(name="地市")
    @TableField(value = "city_code")
	private String cityCode;
    /**地市*/
    @Excel(name="地市")
    @TableField(value = "city")
	private String city;
    /**县*/
    @Excel(name="县")
    @TableField(value = "county")
	private String county;
    /**县*/
    @Excel(name="县")
    @TableField(value = "county_code")
	private String countyCode;
    /**项目类型*/
    @Excel(name="项目类型")
    @TableField(value = "project_type")
	private String projectType;
    /**工程类型*/
    @Excel(name="工程类型")
    @TableField(value = "engineering_type")
	private String engineeringType;
    /**公路类型*/
    @Excel(name="公路类型")
    @TableField(value = "road_type")
	private String roadType;
    /**工期*/
    @Excel(name="工期")
    @TableField(value = "project_time_limit")
	private String projectTimeLimit;
    /**拟竣工日期*/
    @Excel(name="拟竣工日期")
    @TableField(value = "finish_date_plan")
	private String finishDatePlan;
    /**竣工日期*/
    @Excel(name="竣工日期")
    @TableField(value = "finish_date")
	private String finishDate;
    /**拟开式日期*/
    @Excel(name="拟开式日期")
    @TableField(value = "start_date_plan")
	private String startDatePlan;
    /**开式日期*/
    @Excel(name="开式日期")
    @TableField(value = "start_date")
	private String startDate;
    /**所属组织*/
    @Excel(name="所属组织")
    @TableField(value = "org_name")
	private String orgName;
    /**核算组织*/
    @Excel(name="核算组织")
    @TableField(value = "org_adjust_accounts_id")
	private String orgAdjustAccountsId;
    /**核算组织*/
    @Excel(name="核算组织")
    @TableField(value = "org_adjust_accounts")
	private String orgAdjustAccounts;
    /**管理单位*/
    @Excel(name="管理单位")
    @TableField(value = "manage_unit_id")
	private String manageUnitId;
    /**管理单位*/
    @Excel(name="管理单位")
    @TableField(value = "manage_unit")
	private String manageUnit;
    /**成本模式*/
    @Excel(name="成本模式")
    @TableField(value = "cost_mode")
	private String costMode;
    /**纳税方式*/
    @Excel(name="纳税方式")
    @TableField(value = "tax_mode")
	private String taxMode;
    /**累计完成产值*/
    @Excel(name="累计完成产值")
    @TableField(value = "total_amount")
	private String totalAmount;
    /**是否为主项目*/
    @Excel(name="是否为主项目")
    @TableField(value = "fismain")
	private String fismain;
    /**主项目ID*/
    @Excel(name="主项目ID")
    @TableField(value = "fmainprojectid")
	private String fmainprojectid;
    
    
    /**图片*/
    @TableField(exist = false)
    String picInfo;
    @TableField(exist = false)
    byte[] picInfoBytes;
    
	/**
	 * 获取  id
	 *@return: String  字段主键
	 */
	public String getId(){
		return this.id;
	}

	/**
	 * 设置  id
	 *@param: id  字段主键
	 */
	public void setId(String id){
		this.id = id;
	}
	/**
	 * 获取  orgId
	 *@return: String  组织Id
	 */
	public String getOrgId(){
		return this.orgId;
	}

	/**
	 * 设置  orgId
	 *@param: orgId  组织Id
	 */
	public void setOrgId(String orgId){
		this.orgId = orgId;
	}
	/**
	 * 获取  status
	 *@return: Integer  状态（0：保存；1：提交；2：审核中；3：已审核；5：打回）
	 */
	public Integer getStatus(){
		return this.status;
	}

	/**
	 * 设置  status
	 *@param: status  状态（0：保存；1：提交；2：审核中；3：已审核；5：打回）
	 */
	public void setStatus(Integer status){
		this.status = status;
	}
	/**
	 * 获取  createBy
	 *@return: User  创建者
	 */
	public User getCreateBy(){
		return this.createBy;
	}

	/**
	 * 设置  createBy
	 *@param: createBy  创建者
	 */
	public void setCreateBy(User createBy){
		this.createBy = createBy;
	}
	/**
	 * 获取  createDate
	 *@return: Date  创建时间
	 */
	public Date getCreateDate(){
		return this.createDate;
	}

	/**
	 * 设置  createDate
	 *@param: createDate  创建时间
	 */
	public void setCreateDate(Date createDate){
		this.createDate = createDate;
	}
	/**
	 * 获取  updateBy
	 *@return: User  更新者
	 */
	public User getUpdateBy(){
		return this.updateBy;
	}

	/**
	 * 设置  updateBy
	 *@param: updateBy  更新者
	 */
	public void setUpdateBy(User updateBy){
		this.updateBy = updateBy;
	}
	/**
	 * 获取  updateDate
	 *@return: Date  更新时间
	 */
	public Date getUpdateDate(){
		return this.updateDate;
	}

	/**
	 * 设置  updateDate
	 *@param: updateDate  更新时间
	 */
	public void setUpdateDate(Date updateDate){
		this.updateDate = updateDate;
	}
	/**
	 * 获取  delFlag
	 *@return: String  删除标记（0：正常；1：删除）
	 */
	public String getDelFlag(){
		return this.delFlag;
	}

	/**
	 * 设置  delFlag
	 *@param: delFlag  删除标记（0：正常；1：删除）
	 */
	public void setDelFlag(String delFlag){
		this.delFlag = delFlag;
	}
	/**
	 * 获取  remarks
	 *@return: String  备注信息
	 */
	public String getRemarks(){
		return this.remarks;
	}

	/**
	 * 设置  remarks
	 *@param: remarks  备注信息
	 */
	public void setRemarks(String remarks){
		this.remarks = remarks;
	}
	/**
	 * 获取  name
	 *@return: String  项目名称
	 */
	public String getName(){
		return this.name;
	}

	/**
	 * 设置  name
	 *@param: name  项目名称
	 */
	public void setName(String name){
		this.name = name;
	}
	/**
	 * 获取  code
	 *@return: String  项目编号
	 */
	public String getCode(){
		return this.code;
	}

	/**
	 * 设置  code
	 *@param: code  项目编号
	 */
	public void setCode(String code){
		this.code = code;
	}
	/**
	 * 获取  longtitude
	 *@return: String  经度
	 */
	public String getLongtitude(){
		return this.longtitude;
	}

	/**
	 * 设置  longtitude
	 *@param: longtitude  经度
	 */
	public void setLongtitude(String longtitude){
		this.longtitude = longtitude;
	}
	/**
	 * 获取  latitude
	 *@return: String  纬度
	 */
	public String getLatitude(){
		return this.latitude;
	}

	/**
	 * 设置  latitude
	 *@param: latitude  纬度
	 */
	public void setLatitude(String latitude){
		this.latitude = latitude;
	}
	/**
	 * 获取  projectDesc
	 *@return: String  项目描述
	 */
	public String getProjectDesc(){
		return this.projectDesc;
	}

	/**
	 * 设置  projectDesc
	 *@param: projectDesc  项目描述
	 */
	public void setProjectDesc(String projectDesc){
		this.projectDesc = projectDesc;
	}
	/**
	 * 获取  manager
	 *@return: String  项目经理
	 */
	public String getManager(){
		return this.manager;
	}

	/**
	 * 设置  manager
	 *@param: manager  项目经理
	 */
	public void setManager(String manager){
		this.manager = manager;
	}
	/**
	 * 获取  contact
	 *@return: String  联系人
	 */
	public String getContact(){
		return this.contact;
	}

	/**
	 * 设置  contact
	 *@param: contact  联系人
	 */
	public void setContact(String contact){
		this.contact = contact;
	}
	/**
	 * 获取  source
	 *@return: String  项目来源
	 */
	public String getSource(){
		return this.source;
	}

	/**
	 * 设置  source
	 *@param: source  项目来源
	 */
	public void setSource(String source){
		this.source = source;
	}
	/**
	 * 获取  prjectScale
	 *@return: String  项目规模
	 */
	public String getPrjectScale(){
		return this.prjectScale;
	}

	/**
	 * 设置  prjectScale
	 *@param: prjectScale  项目规模
	 */
	public void setPrjectScale(String prjectScale){
		this.prjectScale = prjectScale;
	}
	/**
	 * 获取  manageMode
	 *@return: String  管理模式
	 */
	public String getManageMode(){
		return this.manageMode;
	}

	/**
	 * 设置  manageMode
	 *@param: manageMode  管理模式
	 */
	public void setManageMode(String manageMode){
		this.manageMode = manageMode;
	}

	/**
	 * 获取  mcontrolMode
	 *@return: String  管控模式
	 */
	public String getMcontrolMode(){
		return this.mcontrolMode;
	}

	/**
	 * 设置  mcontrolMode
	 *@param: mcontrolMode  管控模式
	 */
	public void setMcontrolMode(String mcontrolMode){
		this.mcontrolMode = mcontrolMode;
	}
	/**
	 * 获取  trade
	 *@return: String  行业
	 */
	public String getTrade(){
		return this.trade;
	}

	/**
	 * 设置  trade
	 *@param: trade  行业
	 */
	public void setTrade(String trade){
		this.trade = trade;
	}
	/**
	 * 获取  address
	 *@return: String  地址
	 */
	public String getAddress(){
		return this.address;
	}

	/**
	 * 设置  address
	 *@param: address  地址
	 */
	public void setAddress(String address){
		this.address = address;
	}
	/**
	 * 获取  provinceCode
	 *@return: String  省份
	 */
	public String getProvinceCode(){
		return this.provinceCode;
	}

	/**
	 * 设置  provinceCode
	 *@param: provinceCode  省份
	 */
	public void setProvinceCode(String provinceCode){
		this.provinceCode = provinceCode;
	}
	/**
	 * 获取  province
	 *@return: String  省份
	 */
	public String getProvince(){
		return this.province;
	}

	/**
	 * 设置  province
	 *@param: province  省份
	 */
	public void setProvince(String province){
		this.province = province;
	}
	/**
	 * 获取  cityCode
	 *@return: String  地市
	 */
	public String getCityCode(){
		return this.cityCode;
	}

	/**
	 * 设置  cityCode
	 *@param: cityCode  地市
	 */
	public void setCityCode(String cityCode){
		this.cityCode = cityCode;
	}
	/**
	 * 获取  city
	 *@return: String  地市
	 */
	public String getCity(){
		return this.city;
	}

	/**
	 * 设置  city
	 *@param: city  地市
	 */
	public void setCity(String city){
		this.city = city;
	}
	/**
	 * 获取  county
	 *@return: String  县
	 */
	public String getCounty(){
		return this.county;
	}

	/**
	 * 设置  county
	 *@param: county  县
	 */
	public void setCounty(String county){
		this.county = county;
	}
	/**
	 * 获取  countyCode
	 *@return: String  县
	 */
	public String getCountyCode(){
		return this.countyCode;
	}

	/**
	 * 设置  countyCode
	 *@param: countyCode  县
	 */
	public void setCountyCode(String countyCode){
		this.countyCode = countyCode;
	}
	/**
	 * 获取  projectType
	 *@return: String  项目类型
	 */
	public String getProjectType(){
		return this.projectType;
	}

	/**
	 * 设置  projectType
	 *@param: projectType  项目类型
	 */
	public void setProjectType(String projectType){
		this.projectType = projectType;
	}

	/**
	 * 获取  finishDatePlan
	 *@return: String  拟竣工日期
	 */
	public String getFinishDatePlan(){
		return this.finishDatePlan;
	}

	/**
	 * 设置  finishDatePlan
	 *@param: finishDatePlan  拟竣工日期
	 */
	public void setFinishDatePlan(String finishDatePlan){
		this.finishDatePlan = finishDatePlan;
	}
	/**
	 * 获取  finishDate
	 *@return: String  竣工日期
	 */
	public String getFinishDate(){
		return this.finishDate;
	}

	/**
	 * 设置  finishDate
	 *@param: finishDate  竣工日期
	 */
	public void setFinishDate(String finishDate){
		this.finishDate = finishDate;
	}
	/**
	 * 获取  startDatePlan
	 *@return: String  拟开式日期
	 */
	public String getStartDatePlan(){
		return this.startDatePlan;
	}

	/**
	 * 设置  startDatePlan
	 *@param: startDatePlan  拟开式日期
	 */
	public void setStartDatePlan(String startDatePlan){
		this.startDatePlan = startDatePlan;
	}
	/**
	 * 获取  startDate
	 *@return: String  开式日期
	 */
	public String getStartDate(){
		return this.startDate;
	}

	/**
	 * 设置  startDate
	 *@param: startDate  开式日期
	 */
	public void setStartDate(String startDate){
		this.startDate = startDate;
	}
	/**
	 * 获取  orgName
	 *@return: String  所属组织
	 */
	public String getOrgName(){
		return this.orgName;
	}

	/**
	 * 设置  orgName
	 *@param: orgName  所属组织
	 */
	public void setOrgName(String orgName){
		this.orgName = orgName;
	}
	/**
	 * 获取  orgAdjustAccounts
	 *@return: String  核算组织
	 */
	public String getOrgAdjustAccounts(){
		return this.orgAdjustAccounts;
	}

	/**
	 * 设置  orgAdjustAccounts
	 *@param: orgAdjustAccounts  核算组织
	 */
	public void setOrgAdjustAccounts(String orgAdjustAccounts){
		this.orgAdjustAccounts = orgAdjustAccounts;
	}
	/**
	 * 获取  manageUnitId
	 *@return: String  管理单位
	 */
	public String getManageUnitId(){
		return this.manageUnitId;
	}

	/**
	 * 设置  manageUnitId
	 *@param: manageUnitId  管理单位
	 */
	public void setManageUnitId(String manageUnitId){
		this.manageUnitId = manageUnitId;
	}
	/**
	 * 获取  manageUnit
	 *@return: String  管理单位
	 */
	public String getManageUnit(){
		return this.manageUnit;
	}

	/**
	 * 设置  manageUnit
	 *@param: manageUnit  管理单位
	 */
	public void setManageUnit(String manageUnit){
		this.manageUnit = manageUnit;
	}
	/**
	 * 获取  costMode
	 *@return: String  成本模式
	 */
	public String getCostMode(){
		return this.costMode;
	}

	/**
	 * 设置  costMode
	 *@param: costMode  成本模式
	 */
	public void setCostMode(String costMode){
		this.costMode = costMode;
	}
	/**
	 * 获取  taxMode
	 *@return: String  纳税方式
	 */
	public String getTaxMode(){
		return this.taxMode;
	}

	/**
	 * 设置  taxMode
	 *@param: taxMode  纳税方式
	 */
	public void setTaxMode(String taxMode){
		this.taxMode = taxMode;
	}

	public String getPicInfo() {

		if(null!=picInfoBytes) {
			BASE64Encoder coder = new BASE64Encoder();
			picInfo = coder.encode(picInfoBytes);
		}
		return picInfo;
	}

	public void setPicInfo(String picInfo) {
		this.picInfo = picInfo;
	}


	public byte[] getPicInfoBytes() {
		return picInfoBytes;
	}

	public void setPicInfoBytes(byte[] picInfoBytes) {
		this.picInfoBytes = picInfoBytes;
	}




	public String getEngineeringType() {
		return engineeringType;
	}

	public void setEngineeringType(String engineeringType) {
		this.engineeringType = engineeringType;
	}

	public String getRoadType() {
		return roadType;
	}

	public void setRoadType(String roadType) {
		this.roadType = roadType;
	}

	public String getFismain() {
		return fismain;
	}

	public void setFismain(String fismain) {
		this.fismain = fismain;
	}

	public String getFmainprojectid() {
		return fmainprojectid;
	}

	public void setFmainprojectid(String fmainprojectid) {
		this.fmainprojectid = fmainprojectid;
	}

	public String getProjectTimeLimit() {
		return projectTimeLimit;
	}

	public void setProjectTimeLimit(String projectTimeLimit) {
		this.projectTimeLimit = projectTimeLimit;
	}

	public String getTotalAmount() {
		return totalAmount;
	}

	public void setTotalAmount(String totalAmount) {
		this.totalAmount = totalAmount;
	}

	public String getOrgAdjustAccountsId() {
		return orgAdjustAccountsId;
	}

	public void setOrgAdjustAccountsId(String orgAdjustAccountsId) {
		this.orgAdjustAccountsId = orgAdjustAccountsId;
	}

	public String getProjectStatus() {
		return projectStatus;
	}

	public void setProjectStatus(String projectStatus) {
		this.projectStatus = projectStatus;
	}	
	
}
